* {
  padding: 0;
  margin: 0;
  user-select: none;
}
html:-webkit-full-screen {
  cursor: none;
}
body {
  width: 100vw;
  height: 100vh;
  font-family: Arial, Helvetica, sans-serif;
  .app {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
  }
}
.windows {
  background-color: black;
  p {
    color: white;
    &:first-of-type {
      padding-top: 10px;
    }
    &:last-of-type {
      position: absolute;
      bottom: 10px;
    }
  }
  &-loading {
    width: 50px;
    height: 50px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: rotate(50deg);
    transform-origin: center;
    .circle {
      width: 100%;
      height: 10px;
      display: flex;
      flex-flow: row nowrap;
      align-items: center;
      justify-content: flex-start;
      &::before {
        content: "";
        display: block;
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background-color: white;
      }
    }
    @for $var from 1 to 6 {
      .loading:nth-child(#{$var}) {
        position: absolute;
        animation: rotate 5.5s 0s + $var * 0.2s infinite;
        opacity: 0;
      }
    }
    @keyframes rotate {
      0% {
        opacity: 1;
        transform: rotate(190deg);
        animation-timing-function: cubic-bezier(0.29, 0.44, 0.32, 0.74);
      }
      7% {
        opacity: 1;
        transform: rotate(300deg);
        animation-timing-function: linear;
      }
      30% {
        opacity: 1;
        transform: rotate(450deg);
        animation-timing-function: cubic-bezier(0.53, 0.27, 0.37, 0.81);
      }
      39% {
        opacity: 1;
        transform: rotate(645deg);
        animation-timing-function: linear;
      }
      63% {
        opacity: 1;
        transform: rotate(800deg);
        animation-timing-function: cubic-bezier(0.5, 0.32, 0.82, 0.54);
      }
      68% {
        opacity: 1;
        transform: rotate(920deg);
        animation-timing-function: ease-in;
      }
      69% {
        opacity: 0;
        transform: rotate(930deg);
      }
      100% {
        opacity: 0;
        transform: rotate(930deg);
      }
    }
  }
}

.mac {
  background-color: black;
  .apple-logo {
    $scale: 5;
    width: 44px * $scale;
    height: 44px * $scale;
    display: flex;
    justify-content: center;
    align-items: center;
    svg {
      transform: scale($scale);
    }
  }
  &-loading {
    width: 250px;
    height: 5px;
    border-radius: 5px;
    background-color: gray;
    position: relative;
    .progress {
      position: absolute;
      left: 0;
      width: 0%;
      height: 100%;
      background-color: white;
      border-radius: 10px;
      animation: grow 100s ease-in-out forwards;
    }
    @keyframes grow {
      0% {
        width: 2%;
      }
      10% {
        width: 10%;
      }
      100% {
        width: 96%;
      }
    }
  }
}
